/*
 * @# PhotoLikeService.java 2011-12-26 下午06:18:37
 * 
 * Copyright (C) 2010 - 2011 广州羿安信息科技有限公司
 * Guangzhou ianswer information technology co. ltd.
 * 
 * All rights reserved!
 */
package com.ianswer.px.album.service;

import java.util.List;

import com.ianswer.px.album.entity.PhotoLike;

/**
 * 对相片的喜爱处理.
 * 
 * @author alvin hwang
 */
public interface PhotoLikeService {

	/**
	 * 每页最多显示的记录条数: 20.
	 */
	int RESULTS_PER_PAGE = 20;

	/**
	 * 获取最新的{@link #RESULTS_PER_PAGE}条喜爱记录.
	 * 
	 * @param photoId
	 *            相片标识.
	 * @return 最新的二十条喜爱记录列表.
	 */
	List<PhotoLike> queryFirstPage(Long photoId);

	/**
	 * 获取指定页码的喜爱记录, 每页显示: {@link #RESULTS_PER_PAGE}.
	 * 
	 * @param photoId
	 *            相片标识.
	 * @param pageIndex
	 *            页码(从1开始).
	 * @return 喜爱记录列表.
	 */
	List<PhotoLike> query(Long photoId, int pageIndex);

	/**
	 * 增加新的喜爱记录.
	 * 
	 * @param albumId
	 *            相册标识.
	 * @param photoId
	 *            相片标识.
	 * @param userId
	 *            用户标识.
	 * @return 喜爱记录标识.
	 */
	Long insert(Long albumId, Long photoId, Long userId);
}
